openapi: 3.0.1
info:
  title: DA - Council to ePlanning API
  description: Development Application Management  v2 API.
  version: v2
externalDocs:
  description: Find out more about the DA process
  url: >-
    https://www.planning.nsw.gov.au/Assess-and-Regulate/Development-Assessment/Your-guide-to-the-DA-process
servers:
  - url: https://api.apps1.nsw.gov.au/planning/OnlineDA/v2
tags:
  - name: Development Application
    externalDocs:
      description: Find out more about the DA process
      url: >-
        https://www.planning.nsw.gov.au/Assess-and-Regulate/Development-Assessment/Your-guide-to-the-DA-process
paths:
  /AcceptReturn/{CaseID}:
    put:
      summary: AcceptReturn
      description: >-
        This operation transfers the council's decision whether to accept or
        return the DA case from the council's IT system to the Online DA
        Service. This operation includes 'Completeness check' and 'Fee paid and
        lodged' stages in UI. If Completeness check is performed in UI then the
        subsequent action Fee Paid and lodged could be performed only in UI and
        not via API.
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified application number.
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to identify the council LGA name from which
            the request was initiated.
          required: true
          schema:
            type: string
        - name: IdempotencyID
          in: header
          description: >-
            Unique Id for this request. Allows the API to respond in an
            idempotent way if it has already been called with these parameters
            and prevents duplicate processing. Typically a UUID such as
            "63a9ba30-7a4b-4fac-b343-d1f05cf089f1"
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AcceptReturn'
        required: true
      responses:
        '200':
          description: Case updated
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/AcceptReturnResponse'
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Case not found or locked by another user
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error404'
      x-codegen-request-body-name: body
  /PreliminaryAssessment/{CaseID}:
    put:
      summary: PreliminaryAssessment
      description: >-
        This operation transfers the council to perform preliminary assessment
        for the DA case from the council's IT system to the online DA service.
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified application number
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to identify the council LGA name from which
            the request was initiated.
          required: true
          schema:
            type: string
        - name: IdempotencyID
          in: header
          description: >-
            Unique Id for this request. Allows the API to respond in an
            idempotent way if it has already been called with these parameters
            and prevents duplicate processing. Typically a UUID such as
            "63a9ba30-7a4b-4fac-b343-d1f05cf089f1"
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PreliminaryAssessment'
        required: true
      responses:
        '200':
          description: Case updated
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Success'
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Case not found or locked by another user
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error404'
      x-codegen-request-body-name: body
  /FinalAssessment/{CaseID}:
    put:
      summary: FinalAssessment
      description: >-
        This operation transfers final assessment details for the application
        from the council's IT system to the online DA service.
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified application number.
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to identify the council LGA name from which
            the request was initiated.
          required: true
          schema:
            type: string
        - name: IdempotencyID
          in: header
          description: >-
            Unique Id for this request. Allows the API to respond in an
            idempotent way if it has already been called with these parameters
            and prevents duplicate processing. Typically a UUID such as
            "63a9ba30-7a4b-4fac-b343-d1f05cf089f1"
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FinalAssessment'
        required: true
      responses:
        '200':
          description: Case updated
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Response'
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Case not found or locked by another user
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error404'
      x-codegen-request-body-name: body
  /Determine/{CaseID}:
    put:
      summary: Determine
      description: >-
        This operation transfers the council's determination outcome on the
        application from the council's IT system to the online DA service.
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified application number.
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to identify the council LGA name from which
            the request was initiated.
          required: true
          schema:
            type: string
        - name: IdempotencyID
          in: header
          description: >-
            Unique Id for this request. Allows the API to respond in an
            idempotent way if it has already been called with these parameters
            and prevents duplicate processing. Typically a UUID such as
            "63a9ba30-7a4b-4fac-b343-d1f05cf089f1"
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Determination'
        required: true
      responses:
        '200':
          description: Case updated
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Response'
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Case not found or locked by another user
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error404'
      x-codegen-request-body-name: body
  /ReviewRequestConsent/{CaseID}:
    put:
      summary: ReviewRequestConsent
      description: >-
        This operation is to transfer the reviewed request consent details from
        council to online DA service.
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified application number.
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to identify the council LGA name from which
            the request was initiated.
          required: true
          schema:
            type: string
        - name: IdempotencyID
          in: header
          description: >-
            Unique Id for this request. Allows the API to respond in an
            idempotent way if it has already been called with these parameters
            and prevents duplicate processing. Typically a UUID such as
            "63a9ba30-7a4b-4fac-b343-d1f05cf089f1"
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReviewRequestConsent'
        required: true
      responses:
        '200':
          description: Review Request Consent Performed successfully
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Response'
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Case not found or locked by another user
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error404'
      x-codegen-request-body-name: body
  /PendingLECDecision/{CaseID}:
    put:
      summary: PendingLECDecision
      description: >-
        This operation transfers the council's decision to mark the case as
        pending with LEC during the determination process from council's IT
        system to online DA digital service.
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified application number.
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to identify the council LGA name from which
            the request was initiated.
          required: true
          schema:
            type: string
        - name: IdempotencyID
          in: header
          description: >-
            Unique Id for this request. Allows the API to respond in an
            idempotent way if it has already been called with these parameters
            and prevents duplicate processing. Typically a UUID such as
            "63a9ba30-7a4b-4fac-b343-d1f05cf089f1"
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PendingLECDecision'
        required: true
      responses:
        '200':
          description: Case successfully routed to court appeal
          content: {}
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Case not found or locked by another user
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error404'
      x-codegen-request-body-name: body
  /EditDA/{CaseID}:
    put:
      summary: EditDA
      description: >-
        This operation transfers the amended development application details
        from council's IT system to ePlanning. It is expected that only the
        attributes that are to be amended are to be supplied in the payload,
        rather than the entire schema. If ePlanning receives the entire schema,
        ePlanning will overwrite the case with the supplied latest values.
        Please refer the request body samples and reach out to the ePlanning
        team for any support. By performing this operation, the consent
        authority is abiding to the declaration  - I confirm that the change(s)
        entered is/are made with appropriate authority from the applicant(s).
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified Portal application number
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to route the request to the council's API
            endpoint
          required: true
          schema:
            type: string
      requestBody:
        description: Information request object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EditDA'
            examples:
              EditDA-SampleRequest1:
                description: >-
                  For an independent field like 'isNewRoadProposed', that does
                  not have any condition or object hierarchy dependency on
                  another field, it can be sent through in the format mentioned
                  in the example schema.
                value:
                  isNewRoadProposed: true
                  updatedByEmail: cessnock1@yopmail.com
              EditDA-SampleRequest2:
                description: >-
                  If there is any value change intended for an attribute within
                  the object hierarchy, it's expected that the object should be
                  sent. In this case "otherName" value is intended to be
                  changed. As this is within the applicantperson object which is
                  a subset of the applicant object, therefore it is expected the
                  entire object hierarchy to be sent as per the format mentioned
                  in the example schema.
                value:
                  applicant:
                    applicantPerson:
                      otherName: To be changed Other name
                  updatedByEmail: cessnock1@yopmail.com
              EditDA-SampleRequest3:
                description: >-
                  For a dependent field like (detailsOfSecurityConditions), it's
                  dependent field (securityConditions) value needs to be
                  supplied . It can be sent through in the format mentioned in
                  the example schema.
                value:
                  securityConditions: true
                  detailsOfSecurityConditions: There is a locked gate.
                  updatedByEmail: cessnock1@yopmail.com
              EditDA-SampleRequest4:
                description: >-
                  If a new list value is intended to be added to an existing
                  list, entire list is expected to be sent. In this case, if a
                  new owner list is intended to be added to the  owner's details
                  list, existing owner details and the new owner details are to
                  be supplied inline with the object hierachy. As OwnerDetails
                  fields are also dependent on "developmentSiteOwner" option &
                  "ownersConsentDeclaration", hence it is expected the entire
                  object hierarchy to be sent as per format mentioned in the
                  example schema.
                value:
                  developmentSiteOwner: >-
                    There are multiple owners of the development site and
                    applicant is one of them
                  ownerDetails:
                    - isOwnerABuilder: true
                      title: Mr
                      ownerPerson:
                        firstName: Existing Owner
                        otherName: ''
                        familyName: test
                        contactNumber: ''
                        email: test@yopmail.com
                      address: 186 BLACKTOWN ROAD BLACKTOWN 2148
                    - isOwnerABuilder: true
                      title: Mrs
                      ownerPerson:
                        firstName: New Owner to be added
                        otherName: ''
                        familyName: flyname
                        contactNumber: ''
                        email: test@yopmail.com
                      address: 186 BLACKTOWN ROAD BLACKTOWN 2148
                  ownersConsentDeclaration: true
                  updatedByEmail: cessnock1@yopmail.com
              EditDA-SampleRequest5:
                description: >-
                  Only one optional document type 'Approved DA Edit Details' is
                  allowed to be uploaded through this API. Refer to the sample
                  request body to upload a document.
                value:
                  Documents:
                    - documentName: A12PAI.pdf
                      documentType: Approved DA edit details
                      uploadedDateTime: '2021-01-27T03:13:02.761Z'
                      documentURL: >-
                        https://api-tst.apps1.nsw.gov.au/planning/external/v1/Documents/Doc2
                  updatedByEmail: cessnock1@yopmail.com
        required: true
      responses:
        '200':
          description: Case Updated
          content: {}
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
      x-codegen-request-body-name: body
components:
  schemas:
    AcceptReturn:
      required:
        - councilReferenceNumber
        - lodgementOutcome
        - updatedByEmail
      type: object
      properties:
        lodgementOutcome:
          type: string
          description: >-
            This is to track the council's acceptance or rejection of an
            application. Example values are as below. Please refer to reference
            data API for the latest values. 1. Application was lodged 2.
            Application was returned
          example: Refer to description for values.
        isFeesPaid:
          type: boolean
          description: This is to track if applicant had paid the fee.
        isFeePayableunderPart13:
          type: boolean
          description: >-
            This gives the ability to mark a modification DA as lodged on the
            day the application was submitted if no fee is payable under Part
            13, so that the applicant is notified about correct lodgement date
            and process. This is applicable for modification DAs only.
        totalFeesPaid:
          type: number
          description: >-
            This is to track the total fees paid by the applicant. Mandatory
            only if fee was paid (isFeesPaid is true).
          example: 1250.9
        councilReferenceNumber:
          maxLength: 20
          type: string
          description: >-
            This is to track the internal DA ID generated on the council's IT
            system.
          example: DA201900049
        acceptDate:
          type: string
          description: >-
            This is to track the date the application was accepted and lodged in
            the council system. Mandatory if DA has been accepted and lodged. It
            should be in yyyy-mm-dd format.
          format: date
        returnDate:
          type: string
          description: >-
            This is to track the application returned date to the applicant.
            Mandatory if lodgementOutcome is 'Application was returned'.
          format: date
        returnReason:
          type: string
          description: >-
            This is to track the reason the council returned the application.
            Mandatory if lodgementOutcome is 'Application was returned'
        Documents:
          type: array
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        updatedByEmail:
          maxLength: 250
          type: string
          description: User must be registered in the planning portal.
          example: john.smith@gmail.com
    EditDA:
      required:
        - updatedByEmail
      type: object
      properties:
        applicant:
          $ref: '#/components/schemas/Applicant'
        developmentSiteOwner:
          type: string
          description: >-
            This is to track the development site owner type. 1.The applicant is
            the only owner of the development site 2.There are multiple owners
            of the development site and applicant is one of them 3.There are one
            or more owners of the development site and the applicant is NOT one
            of them 4.A company, business, government entity or other similar
            body owns the development site
          example: Refer to description for values.
        securityConditions:
          type: boolean
          description: >-
            This is to track whether there are any security or site conditions
            which may have impact on the person undertaking the inspection.
        detailsOfSecurityConditions:
          type: string
          description: >-
            This is to track the details of security conditions. This is
            applicable when securityConditions is true.
        developerDetails:
          $ref: '#/components/schemas/developerDetails'
        ownerDetails:
          type: array
          items:
            $ref: '#/components/schemas/Owner'
        ownersConsentDeclaration:
          type: boolean
          description: This is to track the applicant's declaration on owner's consent.
        isExistingOnlineDA:
          type: boolean
          description: >-
            This is to track if the existing DA applied was via the NSW Planning
            Portal. Applicable only when the applicationType is MODIFICATION or
            REVIEW.
        existingOnlinePANNumber:
          type: string
          description: >-
            This is to track the portal application number (PAN). Applicable for
            the applications that are submitted through planning portal (When
            "isExistingOnlineDA" is true).
        existingDANumber:
          maxLength: 20
          type: string
          description: >-
            This is to track the existing DA number upon which modification or
            review application is proposed. Required if the applicationType is
            MODIFICATION or REVIEW. This field cannot be amended through Edit DA
            operation, as it's a read only field.
        existingDADeterminationDate:
          type: string
          description: >-
            This is to track the existing DA determination date upon which
            review application is proposed. Required if the applicationType is
            Review. UI field is "Date of determination".
        modificationType:
          type: string
          description: >-
            This is to track modification type for MOD DA Applications. Example
            values are 1. MOD_MINOR 2. MOD_ENV_IMPACT 3. MOD_LEC 4. MOD_OTHERS
            Please refer to the ReferenceData API for the latest information.
        proposedModificationDescription:
          type: string
          description: >-
            This is to track the description for Modification type. Required if
            the 'applicationType' is Modification application.
        siteAddresses:
          type: array
          items:
            $ref: '#/components/schemas/Location'
        commonApplicationTypes:
          type: array
          items:
            $ref: '#/components/schemas/CommonApplicationType'
          description: >-
            This is to track the common Application types. Example values are 1.
            Advertising and signage 2. Alterations or additions to an existing
            building or structure 3. Change of use of land or a building or the
            classification of a building under the Building Code of Australia 4.
            Demolition 5. Erection of a new structure 6. Hours of operation and
            trading 7. Subdivision 8. Temporary building, structure or use
        developmentTypes:
          type: array
          description: >-
            This is to track the types of development. For 'Demolition' &
            'Subdivision' values under commonApplicationTypes, development types
            are not required to be supplied.
          items:
            $ref: '#/components/schemas/DevelopmentType'
        isDevelopmentIncludeAffordableHousing:
          type: boolean
          description: >-
            This is to track if the development includes affordable housing when
            applicable.
        isApplicationForInfillAffordableHousing:
          type: boolean
          description: >-
            This is to track if the application is submitted for infill
            affordable housing. This is applicable when
            'isDevelopmentIncludeAffordableHousing' is true.
        boardingHouseRegCommunityProviderName:
          maxLength: 512
          type: string
          description: >-
            This is to track the registered community housing provider who will
            be managing the boarding house.
        regCommunityHousingProviderName:
          maxLength: 512
          type: string
          description: >-
            This is to track the name of the registered community housing
            provider that will be managing the affordable housing component of
            the site. This is applicable for the development type "Boarding
            house" or when 'isDevelopmentIncludeAffordableHousing' is true.
        isBuildToRentHousing:
          type: boolean
          description: >-
            This is to track if the development proposed to be build-to-rent
            housing when applicable.
        relevantEPI:
          type: array
          description: >-
            This is to track the relevant environmental planning instrument. eg.
            LEP, SEPP
          items:
            $ref: '#/components/schemas/RelevantEPIList'
        isPoolSpa40KlitersProposed:
          type: boolean
          description: >-
            This is to track if the pool is more than 40K in capacity.This is
            applicable when the applicant has chosen the development types as 
            'Pools / decks / fencing' development type.
        developmentDescription:
          maxLength: 1500
          type: string
        proposed24HrWork:
          $ref: '#/components/schemas/ScheduleWorkDay'
        numDwellingsUnitsProposed:
          type: integer
          description: >-
            This is to track the number of dwellings / units proposed when
            applicable.
        numStoreysProposed:
          type: integer
          description: This is to track the number of storeys proposed when applicable.
        numPreExistingDwellings:
          type: integer
          description: >-
            This is to track the number of pre-existing dwellings on site when
            applicable.
        numDwellingsDemolished:
          type: integer
          description: >-
            This is to track the number of dwellings to be demolished when
            applicable.
        numOfProposedOccupants:
          type: integer
          description: >-
            This attribute is obsolete. However, this attribute will be
            continued to be received in the payload for the submitted cases
            prior to 30th May 2025. This is to track the maximum number of
            occupants or users that a building is designed to accommodate at any
            one time.
        numExistingFloorArea:
          type: integer
          description: >-
            This is to track the existing gross floor area (sqm) when
            applicable.
        numProposedGrossFloorArea:
          type: integer
          description: >-
            This is to track the proposed gross floor area (sqm) when
            applicable.
        numExistingSiteArea:
          type: integer
          description: >-
            This is to track the total (existing) site area (sqm) when
            applicable.
        totalNetLettableArea:
          type: integer
          description: >-
            This attribute is obsolete. However, this attribute will be
            continued to be received in the payload for the submitted cases
            prior to 30th May 2025. This is to track the Net Lettable Area(NLA)
            which is the total area of all internal tenancies across all floors
            in a commerical building, excluding public access, building
            services, staff and cleaning areas.
        islowRentalDwellingLossDevelopment:
          type: boolean
          description: >-
            This is to track if the development results in a loss of low rental
            dwellings. This is applicable and mandatory for any development type
            that belongs to the residential category.
        isNaturalDisaster:
          type: boolean
          description: >-
            This is to track if this application is a direct result of a matter
            declared by the government to be an emergency and/or a natural
            disaster (for example, an application for re-building a home
            destroyed by bushfire).
        costOfDevelopment:
          type: number
          description: This is to track the Estimated development cost, including GST.
        havemoreBASIX:
          type: boolean
          description: >-
            This is to track if the applicant has one or more BASIX certificates
            when applicable.
        capitalInvestmentValue:
          type: number
          maxLength: 15
          description: >-
            This is to track the Estimated development cost. Previously, this
            field was referring the Capital investment value.
        basixCertificateNumbers:
          type: array
          items:
            $ref: '#/components/schemas/BasixCertificateList'
        numExistingLots:
          type: integer
          description: >-
            This is to track the number of existing lots.This is applicable when
            'Subdivision' is one of the values for 'commonApplicationTypes'.
        numProposedAdditionalJobs:
          type: integer
          description: >-
            This attribute is obsolete. However, this attribute will be
            continued to be received in the payload for the submitted cases
            prior to 30th May 2025. This is to track the number of additional
            jobs that are proposed to be generated through the operation of the
            development when applicable.
        subdivisionTypes:
          type: array
          description: >-
            This is to track the types of subdivision referred in the
            application. This is applicable when 'Subdivision' is one of the
            values for 'commonApplicationTypes'.
          items:
            $ref: '#/components/schemas/SubdivisionType'
        devCategoryForParkingSpaces:
          type: array
          description: This is to track the number of parking spaces for application.
          items:
            $ref: '#/components/schemas/devCategoryForParkingSpaces'
        numProposedLots:
          type: integer
          description: >-
            This is to track the number of proposed lots. This is applicable
            when 'Subdivision' is one of the values for
            'commonApplicationTypes'.
        numStaff:
          type: integer
          description: >-
            This is to track the number of proposed staff/employees when
            applicable.
        numParkingSpaces:
          type: integer
          description: This is to track the number of parking spaces.
        numLoadingBays:
          type: integer
          description: This is to track the number of loading bays when applicable.
        isNewRoadProposed:
          type: boolean
          description: This is to track if new road is proposed.
        proposedRoadWorkDescription:
          maxLength: 1500
          type: string
        isStagedDevelopment:
          type: boolean
          description: >-
            This is to track if the development is a staged development or a
            concept only development.
        isConceptDevelopment:
          type: boolean
          description: >-
            This is to track if the development is a concept development only.
            This is applicable when (isStagedDevelopment = true).
        stagedDevelopmentDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the description for the proposed concept
            application and/or the staging of the development. Applicable if
            'isConceptDevelopment' is true.
        climateZones:
          type: array
          description: >-
            This attribute is obsolete. This is to track for the development's
            location according to the guidelines set by the Australian Building
            Code Boards.
          items:
            $ref: '#/components/schemas/climateZones'
        isClimateZoneImpactedDevDesign:
          type: boolean
          description: >-
            This attribute is obsolete. This is to track if the climate Zone has
            impacted the design of the development.
        climateZoneImpactedDevDesignReason:
          type: string
          maxLength: 500
          description: >-
            This attribute is obsolete. This is to track the reason for the
            specific impact of the climate zone on the development design.
        isCrownDevelopment:
          type: boolean
          description: This is to track if this is a proposed crown development.
        crownDevelopmentNSWAgency:
          maxLength: 100
          type: string
        isSubjectToWildernessProtectionAgreement:
          type: boolean
          description: >-
            This indicates if the development on land which is subject to a
            wilderness protection agreement or conservation agreement within the
            meaning of the Wilderness Act 1987.
        isIntegratedDevelopment:
          type: boolean
        integratedDevelopmentTypes:
          type: array
          items:
            $ref: '#/components/schemas/IntegratedDevelopmentType'
        designatedDevelopment:
          type: boolean
        doesImpactHabitat:
          type: boolean
          description: >-
            This is to track if the threatened species, populations, ecological
            communities or their critical habitats are likely impacted with the
            development proposal.
        isBiodiversityCompliantDevelopment:
          type: boolean
          description: This is to track if the development is biodiversity compliant.
        reasonForBiodiversityDevelopment:
          type: string
          maxLength: 2000
          description: >-
            This is to track the reason, the development is biodiversity
            compliant. This is applicable, when the applicant chooses ‘Yes’ for
            the question ‘Is this application for biodiversity compliant
            development’.
        isSubjectToPrivateLandConservationAgreement:
          type: boolean
          description: >-
            This is to track if the application is subject to a private land
            conservation agreement under the Biodiversity Conservation Act 2016?
        doesVaryLEP:
          type: boolean
          description: >-
            This is to track if the application proposes a variation to a
            development standard in an environmental planning instrument (eg LEP
            or SEPP).
        LEPVariation:
          $ref: '#/components/schemas/LEPVariation'
        isApplicationVPA:
          type: boolean
          description: >-
            This is to track if the application accompanied by a Voluntary
            Planning Agreement (VPA).
        vpaDetails:
          type: array
          items:
            $ref: '#/components/schemas/VPADetail'
        actsApplicable:
          type: array
          description: >-
            This is to track the information about the specific Acts that apply
            to the application. This becomes applicable when threatened species,
            populations, ecological communities or their critical habitats are
            likely impacted with the development proposal ( when
            doesImpactHabitat is true ).
          items:
            $ref: '#/components/schemas/ActsApplicable'
        isTreeWorksReq:
          type: boolean
          description: This is to track if tree removal and/or pruning work is proposed.
        treeRemovalDescription:
          type: string
          description: >-
            This is to track the descripton for treeremoval. Applicable only
            when IsTreeWorksReq is selected as true.
        areaImpacted:
          type: number
          description: >-
            This is to track the area which has got impacted. Applicable only
            when IsTreeWorksReq is selected as true.
        impactedLandUnits:
          type: string
          description: >-
            This is to track the impacted land units if tree works are involved.
            Visible only when IsTreeWorksReq is selected as true. One of the
            below values to be supplied. 1. Square metres 2. Hectares
          example: Refer to description for values.
        treesImpacted:
          type: number
          description: >-
            This is to track the number of trees impacted.Applicable only when
            IsTreeWorksReq is selected as true.
        areaUnit:
          type: string
          description: >-
            This is to track the units of area. Applicable only when
            IsTreeWorksReq is selected as true. One of the below mentioned
            values are to be supplied 1. Square metres 2. Hectares
        areaOfCanopy:
          type: number
          description: >-
            This is to track the area of canopy. Applicable only when
            IsTreeWorksReq is selected as true.
        doesIncludeHeritageArea:
          type: boolean
          description: >-
            This is to track if the development site included as an item of
            environmental heritage or sits within a heritage conservation area.
        doesIncludeHeritageBuilding:
          type: boolean
          description: >-
            This is to track if the work proposed includes any heritage listed
            buildings.
        doesIncludeHeritageTreeRemoval:
          type: boolean
          description: This is to track if heritage tree removal proposed.
        isApplicantCouncilMember:
          type: boolean
          description: >-
            This is to track if the applicant or owner is a staff member of the
            organisation assessing the application.
        applicantCouncilRoleDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the description provided(name of person, role in
            council).
        isApplicantRelatedToCouncil:
          type: boolean
          description: >-
            This is to track if the applicant or owner have a relationship with
            any staff of the organisation assessing the application.
        applicantCouncilRelationDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the description provided(name of person, role in
            council, relationship to the person).
        anyPoliticalDonation:
          type: boolean
          description: >-
            This is to track if the applicant is aware of any person who has
            financial interest in the application who has made a political
            donation or gift in the last two years.
        politicalDonation:
          type: object
          properties:
            donationDeclarationPersonName:
              maxLength: 100
              type: string
              description: This is to track the name of person/s making the declaration.
            entityNameDonatedTo:
              maxLength: 100
              type: string
              description: >-
                This is to track the name of entity (if donation / gift not by
                an individual).
            ABNDonatedTo:
              maxLength: 20
              type: string
              description: >-
                This is to track the ABN (if donation / gift not by an
                individual).
            addressDonatedTo:
              maxLength: 250
              type: string
              description: >-
                This is to track the residential address of person or registered
                / official address of entity.
            donationDetails:
              type: array
              items:
                $ref: '#/components/schemas/Donation'
            politicalDonationsDeclaration:
              type: boolean
              description: This is to track the political donations declarations.
        isExemptFromSEPPNonResidential:
          type: boolean
          description: >-
            This is to track if the development is exempt from the State
            Environmental Planning Policy (Sustainable Buildings) 2022, Chapter
            3, relating to non-residential buildings. This is a read only field,
            therefore this cannot be amended through EditDA.
        exemptFromSEPPNonResidentialReasons:
          type: array
          description: >-
            This is to track the reason for SBSEPP ( Sustainable Buildig state
            environmental planning policy) exemption which identifies the
            development involved. This is applicable when the development is
            exempt from SBSEPP (isExemptFromSEPPNonResidential=true).
          items:
            $ref: '#/components/schemas/exemptFromSEPPNonResidentialReasons'
        proposedDevSustainablityMeasures:
          type: array
          description: >-
            This is to track if the proposed development is designed to enable
            any of the sustainability measures. This is applicable when the
            development is not exempt from SBSEPP (
            isExemptFromSEPPNonResidential=false).
          items:
            $ref: '#/components/schemas/proposedDevSustainablityMeasures'
        proposedDevSustainablityOtherDetails:
          type: string
          maxLength: 2000
          description: >-
            This is to capture any 'Other' reason entered by the applicant that
            are not listed under proposedDevSustainablityMeasures. This is
            applicable when the development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential= false).
        sustainabilityProvisionDocumentsDetails:
          type: string
          maxLength: 2000
          description: >-
            This is to track the list of any reports or documents that identify
            the general sustainability provisions. This is applicable when the
            development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false).
        isDevSeekingSustainabilityCertification:
          type: boolean
          description: >-
            This is to track if the development is seeking certification from a
            sustainability rating system. This is applicable when the
            development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false).
        devAchievesSustainabilityRatings:
          type: array
          description: >-
            This is to track the sustainability rating/s that will be achieved
            by the development. This is applicable when the development is not
            exempt from SBSEPP AND when the development is seeking certification
            from a sustainability rating system.
            (isExemptFromSEPPNonResidential=false &
            isDevSeekingSustainabilityCertification=true).
          items:
            $ref: '#/components/schemas/devAchievesSustainabilityRatings'
        devAchievesSustainabilityRatingOtherDetails:
          maxLength: 2000
          type: string
          description: >-
            This is to track any 'Other' reason which is not listed in the
            sustainability rating/s (devAchievesSustainabilityRatings). This is
            applicable when the development is not exempt from SBSEPP AND when
            the development is seeking certification from a sustainability
            rating system. (isExemptFromSEPPNonResidential=false &
            isDevSeekingSustainabilityCertification=true).
        developmentSustainabilityRatingLevel:
          type: string
          maxLength: 2000
          description: >-
            This is to track the star rating or sustainability level that will
            be acheived by the development. This is applicable when the
            development is not exempt from SBSEPP AND when the development is
            seeking certification from a sustainability rating system.
            (isExemptFromSEPPNonResidential=false &
            isDevSeekingSustainabilityCertification=true).
        embodiedEmissionsForNonResDevelopment:
          type: object
          properties:
            isNABERSFormAccompanied:
              type: boolean
              description: >-
                This is to track if the NABERS Embodied Emissions Materials Form
                accompany this application. This is applicable when the
                development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
            emissionsReportVerifierDetails:
              $ref: '#/components/schemas/emissionsReportVerifierDetails'
            isAgreementPreparedforLargeCommercialDevtype:
              type: boolean
              description: >-
                This is to track if a voluntary NABERS Agreement to Rate
                relating to embodied emissions has been prepared for each
                prescribed large commercial development type. This is applicable
                when the development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
            agreementPreparedforLCDevtypeDetails:
              type: string
              maxLength: 50
              description: >-
                This is to track details of all relevant Agreement(s) to Rate
                including reference number in the format AR-12345. This is
                applicable when the development is not exempt from SBSEPP and
                NABERSFormAccompanied (isExemptFromSEPPNonResidential=false &
                isAgreementPreparedforLargeCommercialDevtype = True).
        lowEmissionConstructionTechnologies:
          type: object
          description: >-
            This is to track the relevant Low Emissions Constuction Technologies
            attributes. This is applicable when the development is not exempt
            from SBSEPP ( isExemptFromSEPPNonResidential=false ).
          properties:
            description:
              type: string
              maxLength: 2000
              description: >-
                This is the description of any low emissions construction
                technologies incorporated in the development. This is applicable
                when the development is not exempt from SBSEPP (
                isExemptFromSEPPNonResidential=false ).
            isExistingBuildingReused:
              type: boolean
              description: >-
                This is to track if the development is designed to retain or
                reuse an existing building on site. This is applicable when the
                development is not exempt from SBSEPP (
                isExemptFromSEPPNonResidential=false)
            percentageOfTotalDevelopmentReused:
              type: string
              maxLength: 100
              description: >-
                This is to track what percentage of the total development has
                been re-used. This is applicable when the development is not
                exempt from SBSEPP and when the development is designed to
                reatin or reuse an existing building. (
                isExemptFromSEPPNonResidential=false & isExistingBuildingReused
                = true).
            isRecycledMaterialsUsed:
              type: boolean
              description: >-
                This is to track if the development is designed to use recycled
                materials from the site or elsewhere. This is applicable when
                the development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false)
            recycledMaterialsUsedDetails:
              type: string
              maxLength: 500
              description: >-
                This is to track the detailed description obtained from the
                applicant when the recycled materials have been used for
                development.
            isLifeCycleAnalysisPrepared:
              type: boolean
              description: >-
                This is to track if the whole of Life Cycle Analysis (LCA) been
                prepared for this development. This is applicable when the
                development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
        isPrescribedLCDMetTheCriteria:
          type: boolean
          description: >-
            This is to track if the development is a prescribed large commercial
            development that involves any of the consideration. This is
            applicable when the development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false). 1.Office premises with
            1000m2 net lettable area (NLA) or greater 2. Hotel or motel with 100
            rooms or greater 3. Serviced apartments with 100 apartments or
            greater.
        isNetZeroDevelopment:
          type: boolean
          description: >-
            This is to track if the development is designed to operate as a net
            zero development immediately. This is applicable when the
            development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false).
        isDevDesignedNotToUseFossilFuel:
          type: boolean
          description: >-
            This is to track if the developments the development is designed to
            Incorporate infrastructure, or space for the infrastructure
            necessary for the development to not use on-site fossil fuels after
            1 January 2035. This is applicable when 
            (isExemptFromSEPPNonResidential=false &
            isPrescribedLCDMetTheCriteria = true & isNetZeroDevelopment=false).
        netZeroProvisions:
          type: array
          description: >-
            This is to track the net zero provisions that the the development
            has incorporated.  This is applicable when
            (isExemptFromSEPPNonResidential= false &
            isPrescribedLCDMetTheCriteria = true).
          items:
            $ref: '#/components/schemas/netZeroProvisions'
        estimatedAnnualEnergyConsumption:
          type: integer
          description: >-
            This is to track the estimated annual energy consumption for the
            building in kWh/m2 metrics. This is applicable when
            (isExemptFromSEPPNonResidential= false &
            isPrescribedLCDMetTheCriteria = true)
        estimatedAnnualEnergyRelatedEmissions:
          type: integer
          description: >-
            This is to track estimated amount of emissions relating to energy
            use in the building, including direct and indirect emissions in
            kgCO2e/m2 p.a metrics. This is applicable when
            (isExemptFromSEPPNonResidential=false &
            isPrescribedLCDMetTheCriteria = true & isPrescribedLCDMetTheCriteria
            = true).
        water:
          type: object
          properties:
            isNABERSWaterRateAgreementsPrepared:
              type: boolean
              description: >-
                This is to track if NABERS Agreement(s) to Rate relating to
                water use has been prepared for each prescribed large commercial
                use in the development. This is applicable when
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true)
            agreements:
              type: array
              description: >-
                This is to track details of the agreements when NABERS
                afreeements is prepared. (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true &
                isNABERSWaterRateAgreementsPrepared = true)
              items:
                $ref: '#/components/schemas/Agreements'
        energy:
          type: object
          properties:
            preferredSectionJPathway:
              type: string
              description: >-
                This is to track the preferred Section J pathway for this
                development from the following pathways.This is applicable when
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true ). Please find below
                example values. 1. J1V1 NABERS Energy 2. J1V2 Green Star 3. J1V3
                Verification using a reference building 4. J1V4 Verification of
                building envelope sealing
            isDevelopmentInCityOfSydneyLGA:
              type: boolean
              description: >-
                This is to track if development is in the City of Sydney Local
                Government Area. This is applicable when 
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true ).
            isNABERSEnergyRateAgreementsPrepared:
              type: boolean
              description: >-
                This is to track if the NABERS Commitment Agreement(s) or
                Agreement(s) to Rate relating to energy have been prepared for
                each prescribed large commercial use in the development. This is
                applicable when (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true & 
                isDevelopmentInCityOfSydneyLGA = false)
            agreements:
              type: array
              description: >-
                This is to track the energy agreements. This is applicable when
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true & 
                isDevelopmentInCityOfSydneyLGA = false &
                isNABERSEnergyRateAgreementsPrepared = true )This is to track if
                the payer is an individual or a company.
              items:
                $ref: '#/components/schemas/Agreements'
        payerInformation:
          type: object
          properties:
            payerType:
              type: string
              description: >-
                This is to track if the payer is an individual or a company. One
                of the below mentioned values must be selected for payer type.
                1. A company, business, government entity or other similar body
                2. Individual
              example: Refer to description for values.
            billingAddress:
              maxLength: 250
              type: string
              description: This is to track the billing address of the payer.
            title:
              type: string
              description: >-
                This attribute is obsolete. However, this attribute will be
                continued to be received in the payload for the submitted cases
                prior to 30th May 2025. This is to track the title of the payer.
                This is applicable if the payer is an individual.
            payerPerson:
              $ref: '#/components/schemas/Person'
            payerCompany:
              $ref: '#/components/schemas/payerCompany'
        isFeesPaid:
          type: boolean
          description: This is to track if applicant has paid the DA application fee.
        isFeePayableunderPart13:
          type: boolean
          description: >-
            This is to track if the payable fee is applicable for Mod DA
            application under part 13.
        totalFeesPaid:
          type: number
          description: >-
            This is to track the total fees paid by the applicant. Applicable
            only if fee was paid ('isFeesPaid' is true) and should be morethan
            zero.
          example: 1250.9
        councilReferenceNumber:
          maxLength: 20
          type: string
          description: >-
            This is to track the internal DA ID generated on the council's IT
            system.
          example: DA201900049
        inspectionDate:
          type: string
          description: >-
            This is to track the inspection completion date for the application,
            format as yyyy-mm-dd. This is applicable when the application is in
            determination stage. The date must not be in the future or earlier
            than the lodgment date.
          format: date
        isSICReq:
          type: boolean
          description: >-
            This is to track if the site is subject to Special Infrastructure
            Contributions (SIC). This is applicable only when preliminary
            assessment has been completed.
        isVPAReq:
          type: boolean
          description: >-
            This is to track whether the development is located within an urban
            release area, triggering the need for a Voluntary Planning Agreement
            (VPA). This is applicable only when preliminary assessment has been
            completed.
        nominatedUrbanReleaseArea:
          type: string
          description: >-
            This is to track which nominated urban release area the DA belongs
            to. Required when 'isVPAReq' is true. Example values are as below.
            1. Bungarribee 2. Colebee 3. Former Ashlar Golf Course 4. The Ponds
            & Kellyville Ridge Please refer to the ReferenceData API for the
            latest information.
        isPublicInfrastructure:
          type: boolean
          description: >-
            This is to track whether the application has triggered the need to
            consider satisfactory arrangements for public
            infrastructure.Required when 'isVPAReq' is true.
        isSICDeclared:
          type: boolean
          description: >-
            This is to track the consent authority's confirmation of the Special
            Infrastructure Contributions (SIC) declaration. Required when
            'isSICReq' is true and allowed only when application is in
            determination stage.
        isSACDeclared:
          type: boolean
          description: >-
            This is to track the consent authority's confirmation of the SAC
            declaration. Required when 'isVPAReq' is true and allowed only when
            application is in determination stage.
        Documents:
          type: array
          description: This block will be sending the full set of documents.
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        updatedByEmail:
          $ref: '#/components/schemas/updatedByEmail'
    PreliminaryAssessment:
      required:
        - determiningBody
        - isApplicationExhibited
        - isConcurrenceReq
        - isSICReq
        - isVPAReq
        - updatedByEmail
      type: object
      properties:
        determiningBody:
          type: string
          description: >-
            This is to track the anticipated determining body for this
            application. A PPS case will be created if determining body is
            Sydney / Regional planning Panel. Example values are as below.
            Please refer to reference data API for the latest values. 1. Council
            2. Sydney / Regional Planning Panel 3. Local Planning Panel 4.
            Central sydney Planning Committee 5. Land and Environment Court 6.
            Independent Planning Commission 7. Minister for Planning
          example: Refer to description for values.
        isConcurrenceReq:
          type: boolean
          description: >-
            This is to track if application requires concurrence or agency
            referral(s) for the online DA case. If "isConcurrenceReq" is true,
            system will initiate a CNR case which can be accessed using the
            'Related Cases' tab in the planning portal.
        isApplicationExhibited:
          type: boolean
          description: This is to track if the application is publicly exhibited.
        exhibitStartDate:
          type: string
          description: >-
            This is to track the online DA exhibition start date. Only required
            if DA is publicly exhibited.
          format: date
        exhibitEndDate:
          type: string
          description: >-
            This is to track the online DA exhibition end date. Only required if
            DA is publicly exhibited.
          format: date
        isSICReq:
          type: boolean
          description: >-
            This is to track if the site is subject to Special Infrastructure
            Contributions (SIC).
        isVPAReq:
          type: boolean
          description: >-
            This is to track if the development is located within an urban
            release area and it triggers the need for a Voluntary Planning
            Agreement (VPA).
        nominatedUrbanReleaseArea:
          type: string
          description: >-
            This is to track which nominated urban release area the online DA
            belongs to if the site is located in an urban area. Mandatory when
            isVPAReq is true. Example values are as below. Please refer to
            reference data API for the latest values. 1. Bungarribee 2. Colebee
            3. Former Ashlar Golf Course 4. The Ponds & Kellyville Ridge
          example: Refer to description for values.
        isPublicInfrastructure:
          type: boolean
          description: >-
            This is to track if the application triggered the need for
            consideration of satisfactory arrangements for public
            infrastructure. Mandatory when isVPAReq is true.
        isCouncilAppointedMembers:
          type: boolean
          description: >-
            This is to track if correct and current council appointed members
            are on the planning panel or not. This field is relevant when
            determining body is Sydney / Regional planning Panel. This is an
            obsolete attribute and will be removed in future release.
        capitalInvestmentValue:
          type: string
          format: number
          description: >-
            This is to track the capital investment value on the application.
            This field is mandatory when determining body is Sydney / Regional
            planning Panel. Only numbers and decimals are accepted.
        typeOfDevelopment:
          type: string
          description: >-
            This is to track the type of the development. This field is 
            mandatory when determining body is Sydney / Regional planning Panel.
            Example values are as below. Please refer to reference data API for
            the latest values. 1. Capital Investment Value > $30M 2. Capital
            Investment Value > $20M and lodged before 1 March 2018 3. CIV > $5M
            - Private infrastructure and community facilities 4. CIV > $5M -
            Crown Development 5. CIV > $5M - Eco-tourism 6. CIV > $5M - Council
            interest 7. Concept DA that meets criteria under the State and
            Regional Development SEPP 8. Designated Development - Extractive
            Industry 9. Designated Development - Marina 10. Designated
            Development - Waste Facility 11. Coastal Subdivision 12. Certain
            Coastal Protection Works 13. S4.55(2) Modification Application 14.
            S4.56 Modification Application 15. Crown - S4.33 referral 16. LALC
            CIV>$5m 17. LALC >50 submissions 18. LALC 60 day referral 19.
            Referral 120 day DA CIV $10M-$20M
          example: Refer to description for values.
        DADoesNotMeetCriteria:
          type: boolean
          description: >-
            This is to confirm that 'The development does not meet criteria to
            be considered for State significant development under Schedule 1,
            State Environmental Planning Policy (State and Regional Development)
            2011' criteria relating to the type of development. Value should
            always be 'true' as per the current requirement.
        isConstructionCertificateIssued:
          type: boolean
          description: >-
            This is to track the status of the construction certificate whether
            it is issued or not. Mandatory when typeOfDevelopment is S4.55(2)
            Modification Application and S4.56 Modification.
        isReferralCriteria:
          type: boolean
          description: >-
            It is to track if S4.55(2) modification application meets the
            referral criteria to be registered for panel determination.
            Mandatory when typeOfDevelopment is S4.55(2) modification
            application.
        DANumber:
          maxLength: 20
          type: string
          description: >-
            This is to track council unique number. Applicable if determining
            body is Sydney / Regional planning Panel.
        DALodgementDate:
          type: string
          description: >-
            This is to track the lodgement date of online DA application.
            Applicable if determining body is Sydney / Regional planning Panel.
          format: date
        projectTitle:
          maxLength: 30
          type: string
          description: >-
            This is to track the project title for the application. Mandatory if
            determining body is Sydney / Regional planning Panel.
        projectDescription:
          maxLength: 250
          type: string
          description: >-
            This to track the description of the details of the project. Project
            description is mandatory if determining body as Sydney / Regional
            planning Panel.
        conceptDACriteria:
          type: string
          description: >-
            This is to track which concept DA criteria was met under the State
            and Regional Development SEPP. This field is mandatory if
            determining body as Sydney / Regional planning Panel and
            typeOfdevelopment is concept DA that meets criteria under the state
            and regional development SEPP. Example values are as below. Please
            refer to reference data API for the latest values. 1. Capital
            Investment Value > $30M 2. Capital Investment Value > $20M and
            lodged before 1 March 2018 3. CIV>$5M – Private infrastructure and
            community facilities 4. CIV>$5M – Crown Development 5. CIV>$5M –
            Eco-Tourism 6. CIV>$5M – Council interest 7. Designated Development
            - Extractive Industry 8. Designated Development - Marina 9.
            Designated Development - Waste Facility 10. Coastal Subdivision
          example: Refer to description for values.
        address:
          maxLength: 250
          type: string
          description: >-
            This is to track the development site address. Mandatory if
            determining body is Sydney / Regional planning Panel.
        isTheApplicationForDesignatedDevelopment:
          type: boolean
          description: >-
            This is to track if application is a designated development.
            Mandatory if determining body is Sydney / Regional planning Panel.
        isCouncilApplicantOrOwner:
          type: boolean
          description: >-
            This is to track if council applying for online DA or council  owns
            the development. Mandatory if determining body is Sydney / Regional
            planning Panel.
        isCrownDevelopment:
          type: boolean
          description: >-
            This is to track if the application is a crown development or on
            behalf of a crown. Mandatory if determining body is Sydney /
            Regional planning Panel.
        isApplicationStagedUnderEPAAct:
          type: boolean
          description: >-
            This is to track if the application is a Staged DA under 4.21 Act of
            the EP&A. This question is mandatory if determining body as Sydney /
            Regional planning Panel.
        isAppIncResidentialAccomadation:
          type: boolean
          description: >-
            This is to track if application intended for residential
            accommodation according to Standard Instrument definition. Mandatory
            if determining body is Sydney / Regional planning Panel.
        numberOfDwellings:
          type: integer
          maxLength: 30
          description: >-
            This is track the number of dwellings in the DA. Mandatory for
            residential accommodations.
        isAppIncCommercialPremises:
          type: boolean
          description: >-
            This is to track if the application includes commercial premises
            according to Standard Instrument definition. Mandatory if
            determining body is Sydney / Regional planning Panel.
        grossFloorArea:
          type: integer
          maxLength: 30
          description: >-
            This is to track the gross floor area. Required if commercial
            premises is Yes.
        numberOfNewLotsProposed:
          type: integer
          maxLength: 30
          description: >-
            This is to track number of new lots proposed on the application.
            Mandatory if determining body as Sydney / Regional planning Panel.
        proposedExhibitionPeriodFrom:
          type: string
          description: >-
            This is to track the proposed exhibition start date. Mandatory if
            determining body is Sydney / Regional planning Panel.
          format: date
        proposedExhibitionPeriodTo:
          type: string
          description: >-
            This is to track the proposed exhibition end date. Mandatory if
            determining body is Sydney / Regional planning Panel.
          format: date
        estimatedAssessmentCompletionDate:
          type: string
          description: >-
            This is to track the estimated assessment completion date. Mandatory
            if determining body is Sydney / Regional planning Panel.
          format: date
        applicant:
          maxLength: 30
          type: string
          description: >-
            This is to track the parties invovled as applicants. Mandatory if
            determining body is Sydney / Regional planning Panel.
        landOwner:
          maxLength: 30
          type: string
          description: >-
            This is to track the parties invovled as land owners. Mandatory if
            determining body as Sydney / Regional planning Panel.
        seePreparedBy:
          maxLength: 30
          type: string
          description: >-
            This is to track who prepared the application. Mandatory if
            determining body as Sydney / Regional planning Panel.
        architect:
          maxLength: 30
          type: string
          description: >-
            This is to track the architect for the online DA application.
            Applicable if determining body as Sydney / Regional planning Panel.
        doesPublicExhibitionRequired:
          type: boolean
          description: >-
            This is to track if the application needs to be exhibited on the NSW
            planning portal. doesPublicExhibitionRequired is Conditionally
            mandatory, if the question "Would you like to exhibit this
            application on the NSW Planning Portal"(isApplicationExhibited) is
            true. If true value is supplied, an exhibition case will be created.
        updatedByEmail:
          maxLength: 250
          type: string
          description: User must be registered in the planning portal
          example: john.smith@gmail.com
    FinalAssessment:
      required:
        - isPaymentDeclared
        - updatedByEmail
      type: object
      properties:
        isFeesPaidDuringAssessment:
          type: boolean
          description: >-
            This is to track if the applicant paid the DA fees. Mandatory if
            fees not paid during lodgement.
        totalFeesPaid:
          type: number
          description: >-
            This is to track the total fees paid by the applicant. Applicable
            only if fee was paid during assessment.
          example: 1250.9
        inspectionDate:
          type: string
          description: This is to track the inspection completed date on the application.
          format: date
        isPaymentDeclared:
          type: boolean
          description: >-
            This is to track the consent authorities declaration on the
            conditions imposed for the contribution related payments.
            Declaration reads as follows "I confirm that any relevant conditions
            have been imposed requiring the payment of relevant development
            contributions in accordance with any relevant local or state
            contributions plan or Voluntary Planning Agreement.".Consent
            authority can proceed with the subsequent operation only after
            acceptance of this disclaimer. Therefore, only true value is allowed
            for this attribute.
        isSICDeclared:
          type: boolean
          description: >-
            This is to track the declaration confirmation by the consent
            authority regarding Special Infrastructure Contributions(SIC). "I
            confirm that the SIC condition has been included in the proposed
            conditions.". Mandatory when isSICReq is true from the preliminary
            assessment.
        isSACDeclared:
          type: boolean
          description: >-
            This is to track the declaration confirmation by the consent
            authority regarding SAC.  "I confirm that a SAC has been issued in
            relation to this development.". Mandatory when isVPAReq is true.
        Documents:
          type: array
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        updatedByEmail:
          maxLength: 250
          type: string
          description: User must be registered in the planning portal
          example: john.smith@gmail.com
    Determination:
      required:
        - determinationAuthority
        - determinationDate
        - devStandardVariationApproved
        - determinationOutcome
        - sustainableBuildingsRequirementsMet
        - updatedByEmail
      type: object
      properties:
        determinationOutcome:
          type: string
          description: >-
            This is to track the determination outcome provided by council on
            the application final assessment. Example values are as below.
            Please refer to reference data API for the latest values. 1.
            Approved 2. Refused 3. Deferred commencement consent
          example: Refer to description for values.
        ownersConsentProvided:
          type: string
          description: >-
            This is to track whether written evidence of the owner's consent has
            been provided. Required when 'developmentSiteOwner' is other than “I
            am the only owner of the development site”.  Example values are as
            below. 1. Yes 2. No 3. Owners consent not required. Please refer to
            the reference data API for the latest values.
        deferredCommencConsentDts:
          type: string
          description: >-
            This is to track deferred commencement details if council had
            deferred commencement during determination. Mandatory only when
            determinationOutcome is Deferred.
        dueDateForEvidenceAboutRelevantMatters:
          type: string
          format: date
          description: >-
            This is to track the period within which the applicant must produce
            sufficient evidence to the consent authority to enable it to be
            satisfied about the relevant matters in a accordance with Section
            76(3) of the Environmental Planning and Assessment Regulation 2021.
            Mandatory when the determination outcome is deferred.
        determinationAuthority:
          type: string
          description: >-
            This is to track the consent authority that has made the
            determination for the application. Land and environment court is
            applicable only when case is in Proceed to determination stage.
            Example values are as below. Please refer to reference data API for
            the latest values. 1. Council 2. Sydney / Regional Planning Panel 3.
            Local Planning Panel 4. Central sydney Planning Committee 5. Land
            and Environment Court 6. Independent Planning Commission 7. Minister
            for Planning 8. Council staff under delegated authority
          example: Refer to description for values.
        developmentDescription:
          type: string
          description: >-
            This is to track the development description entered by the
            applicant/consent authority. This will be published on the NSW
            Planning Portal to meet the requirements of Section 97 of the
            Environmental Planning and Assessment Regulation 2021. Consent
            authority needs to provide the development description. When the
            consent authority does not provide the description, description
            provided by the applicant will be updated in the Planning portal. No
            validations around providing value for this field, will be given as
            long as the applicant’s entered development description is
            available.  Applicable when determinationAuthority is 'Independent
            Planning Commission' OR 'Minister for Planning' OR 'Central sydney
            Planning Committee' OR 'Land and Environment Court'
          maxLength: 200
        isDevStandardVariationApproved:
          type: boolean
          description: >-
            This is to track if variation to development standards was approved.
            This attribute is an obsolete one and is replaced with the new
            attribute  'devStandardVariationApproved'to allow 'NA' value.
            Support for this attribute will be continued to assist existing
            customers.
        devStandardVariationApproved:
          type: string
          description: >-
            This is to track if variation to development standards was approved.
            Values for this attributes are  1.Yes 2.No 3.NA. This attribute is
            not enforced when the value is supplied through
            'isDevStandardVariationApproved'.
        variationDeclineReason:
          type: string
          maxLength: 512
          description: >-
            This is to track the reason for declining the variation. This is
            applicable when the variation to development standards are not
            approved (isDevStandardVariationApproved=false or
            devStandardVariationApproved=false ).
        developmentVariationDetails:
          type: array
          description: >-
            This is applicable when the variation to development standards are
            approved (isDevStandardVariationApproved=true or
            devStandardVariationApproved=true ).
          items:
            $ref: '#/components/schemas/DevelopmentVariationDetails'
        determinationDate:
          type: string
          description: >-
            This is to track the date on which this application is determined by
            the council.
          format: date
        haveDwellingsApproved:
          type: boolean
          description: >-
            This is to track if any dwellings have been approved for affordable
            rental housing under this consent. When the determination outcome
            "Approved", it becomes mandatory.
        numOfApprovedDwellings:
          type: integer
          description: >-
            This is to track the number of dwellings approved for affordable
            rental housing if dwellings were approved for affordable rental
            housing.  Mandatory when haveDwellingsApproved is true.
        sustainableBuildingsRequirementsMet:
          type: string
          description: >-
            This is to track if the requirements for the Sustainable Buildings
            SEPP were met. This is applicable for the cases that are created
            after 1stOctober2023. Values for this attribute are "Yes","No","NA".
        proposedDevComponentList:
          type: array
          items:
            $ref: '#/components/schemas/ProposedDevComponent'
        roomType:
          type: array
          description: >-
            This is to track the room types as part of development statistics.
            Applicable when determinationOutcome is 'Approved' or 'Deferred
            commencement consent' and is applicable for development types -
            "Boarding house" OR "Co-living" OR "Hostel" OR "Medium Density
            Housing" OR  "Attached dwelling" OR "Dual occupancy" OR "Dual
            occupancy (attached)" OR "Dual occupancy (detached)" OR "Manor
            house" OR "Multi-dwelling housing" OR "Multi-dwelling housing
            (terraces)" OR "Semi-detached dwelling".
          items:
            $ref: '#/components/schemas/RoomTypes'
        numOfBedrooms:
          type: array
          description: >-
            Applicable when determinationOutcome is 'Approved' or 'Deferred
            commencement consent'.
          items:
            $ref: '#/components/schemas/NumberofBedrooms'
        categoryOfDevelopment:
          type: array
          description: >-
            Applicable when determinationOutcome is 'Approved' or 'Deferred
            commencement consent'.
          items:
            $ref: '#/components/schemas/AddcategoryOfDevelopment'
        numOneBedroomDwellings:
          type: integer
          description: >-
            This is to track the number of one bedroom dwellings in the proposed
            online DA development. This attribute will become obsolete in the
            upcoming versions, as it's replaced by the object and their
            attributes. 'numOfBedrooms'
        numTwoBedroomDwellings:
          type: integer
          description: >-
            This is to track the number of two bedroom dwellings in the proposed
            online DA development. This attribute will become obsolete in the
            upcoming versions, as it's replaced by the object and their
            attributes.
        numThreeBedroomDwellings:
          type: integer
          description: >-
            This is to track the number of three bedroom dwellings in the
            proposed online DA development. This attribute will become obsolete
            in the upcoming versions, as it's replaced by the object and their
            attributes.
        numFourOrMoreBedroomDwellings:
          type: integer
          description: >-
            This is to track the number of 4 or more bedroom dwellings in the
            proposed online DA development. This attribute will become obsolete
            in the upcoming versions, as it's replaced by the object and their
            attributes.
        lotSize:
          type: integer
          description: This is to track the lot size in (m2) of the site being developed.
        floorArea:
          type: integer
          description: >-
            This is to track the approved gross floor area (m2) of the
            development (if relevant). This attribute will be replaced by the
            categoryofDevelopment object and will become obsolete in the
            upcoming versions.
        isDesignatedDevelopment:
          type: boolean
          description: This is to track if the development is a designated development.
        isPvtConsultantAssessed:
          type: boolean
          description: >-
            This is to track if the determining authority engage private
            consultants to assess the development application?
        numOfSubmissionsReceived:
          type: integer
          description: >-
            This is to track the number of submissions received in relation to
            the application. Each petition will be considered as a single
            submission.
        isPreDAMeetingHeld:
          type: boolean
          description: >-
            This is to track if a pre-DA meeting was held with council before
            lodgement of the online DA application.
        isApplicantRestrictedContactDetails:
          type: boolean
          description: >-
            This is to track if the applicant had asked for their contact
            information to be restricted or withheld.
        noOfTreesImpacted:
          type: number
          description: >-
            This is to track the number of trees impacted if tree works are
            involved. This is applicable only if tree works are involved as
            indicated by the applicant. ( IsTreeWorksReq =true)
          format: decimal
        landImpacted:
          type: number
          description: >-
            This is to track the land area impacts if tree works are involved.
            Applicable only when IsTreeWorksReq is selected as true.
          format: decimal
        impactedLandUnits:
          type: string
          description: >-
            This is to track the impacted land units if tree works are involved.
            Applicable only when IsTreeWorksReq is selected as true. Example
            values are as below. Please refer to reference data API for the
            latest values. 1. Square metres 2. Hectares
          example: Refer to description for values.
        areaOfCanopy:
          type: number
          description: >-
            This is to track the approximate area of canopy to be removed if
            tree works are involved. Applicable only when IsTreeWorksReq is
            selected as true.
          format: decimal
        canopyUnits:
          type: string
          description: >-
            This is to track number of units of area of canopy to be removed if
            tree works are involved. Applicable only when IsTreeWorksReq is
            selected as true. Example values are as below. Please refer to
            reference data API for the latest values. 1. Square metres 2.
            Hectares
          example: Refer to description for values.
        treeReplacementDetails:
          type: string
          description: >-
            This is to track the details of the replacement of
            trees/land/canopy.Applicable only when IsTreeWorksReq is selected as
            true. Example values are as below. Please refer to reference data
            API for the latest values. 1. No replacement trees 2. Number of
            trees 3. Area of trees in square metres 4. Area of trees in hectares
          example: Refer to description for values.
        replacementTreeCount:
          type: integer
          description: >-
            This is to track the number of trees that are going to be replaced.
            This field is applicable only when 'treeReplacementDetails' is
            selected as'Number of trees' where minimum one is accepted number.
        canopyAreaAtMaturity:
          type: number
          description: >-
            This is to track the predicted area of canopy of maturity. This
            field is mandatory when treeReplacementDetails is selected as  'Area
            of trees in square metres' or 'Area of trees in hectares'
          format: decimal
        Documents:
          type: array
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        updatedByEmail:
          maxLength: 250
          type: string
          description: User must be registered in the planning portal
          example: john.smith@gmail.com
    ReviewRequestConsent:
      required:
        - operativeConsentIssued
        - updatedByEmail
      type: object
      properties:
        operativeConsentIssued:
          type: boolean
          description: >-
            This is to capture 'Has satisfactory evidence been provided that the
            conditions have been addressed'. Mandatory when the applicant
            submits the request operational consent.
        consentComments:
          type: string
          description: >-
            This is to track the comments from council while issuing operational
            consent. Mandatory when operativeConsentIssued is selected as False.
          maxLength: 2000
        Documents:
          type: array
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        updatedByEmail:
          maxLength: 250
          type: string
          description: User must be registered in the planning portal
          example: john.smith@gmail.com
    EnvironmentalPlanningInstrument:
      type: object
      properties:
        epiValue:
          type: string
          description: >-
            This is to track under which Environmental Planning Instrument or
            Development Control Plan is the online DA proposal considered to be
            complying development. One of the below mentioned values must be
            selected for epiValue. 1. State Environmental Planning Policy
            (Exempt and Complying Development Codes) 2008 2. State Environmental
            Planning Policy (Affordable Rental Housing) 2009 3. Other State
            Environmental Planning Policy 4. Other Environmental Planning
            Instrument (eg. Local Environmental Plan, Interim Development Order,
            Planning Scheme, etc) 5. Development Control Plan
        otherSEPPList:
          type: array
          description: >-
            This is to track if any other SEEP policies are involved.
            OtherSEPPList is applicable only when epivalue is
            "OtherEnvironmentalPlanningPolicy".
          items:
            $ref: '#/components/schemas/OtherStateEnvPlanningpolicy'
        otherLEPList:
          type: array
          description: >-
            This is to track if any other LEP policies are applicable.
            Applicable only when epivalue is "OtherEnvironmentalPlanning".
          items:
            $ref: '#/components/schemas/otherenvPlanningInstrument'
    OtherStateEnvPlanningpolicy:
      type: object
      properties:
        otherSEPPValue:
          type: string
          description: >-
            This is to track under which part of the exempt and complying
            development code was the application determined. Mandatory when
            'Other State Environmental Planning Policy' is selected from
            EnvironmentalPlangInstList. Following are examples for addresses
            that come under BLACKTOWN LGA and the other SEPPList values may vary
            in accordance with LGA. One of the below mentioned values must be
            selected for other state environment planning policy. 1. State
            Environmental Planning Policy (Primary Production and Rural
            Development) 2019 2. State Environmental Planning Policy (Building
            Sustainability Index":" BASIX) 2004 3. State Environmental Planning
            Policy No 36—Manufactured Home Estates 4. State Environmental
            Planning Policy (Housing for Seniors or People with a Disability)
            2004 5. State Environmental Planning Policy (Vegetation in Non-Rural
            Areas) 2017 6. State Environmental Planning Policy No 55—Remediation
            of Land 7. State Environmental Planning Policy (Affordable Rental
            Housing) 2009 8. Sydney Regional Environmental Plan (Sydney Harbour
            Catchment) 2005 9. State Environmental Planning Policy No 50—Canal
            Estate Development 10. State Environmental Planning Policy No
            1—Development Standards 11. State Environmental Planning Policy
            (Concurrences) 2018 12. State Environmental Planning Policy
            (Infrastructure) 2007 13. State Environmental Planning Policy No
            70—Affordable Housing (Revised Schemes) 14. State Environmental
            Planning Policy No 21—Caravan Parks 15. State Environmental Planning
            Policy No 65—Design Quality of Residential Apartment Development 16.
            State Environmental Planning Policy (Miscellaneous Consent
            Provisions) 2007 17. State Environmental Planning Policy (Exempt and
            Complying Development Codes) 2008 18. State Environmental Planning
            Policy (Educational Establishments and Child Care Facilities) 2017
            19. State Environmental Planning Policy No 33—Hazardous and
            Offensive Development 20. State Environmental Planning Policy No
            64—Advertising and Signage 21. State Environmental Planning Policy
            (Mining, Petroleum Production and Extractive Industries) 2007 22.
            State Environmental Planning Policy No 19—Bushland in Urban Areas
          example: Refer to description for values.
    otherenvPlanningInstrument:
      type: object
      properties:
        otherLEPValue:
          type: string
          description: >-
            This is to track under which part of the Exempt and Complying
            Development Code was the application determined. This will be
            mandatory for 'Other Environmental Planning Instrument (eg. Local
            Environmental Plan, Interim Development Order, Planning Scheme,
            etc)' from EnvironmentalPlangInstList. Below example is for an
            address that comes under BLACKTOWN LGA and the other respective
            Local Environment plan examples may vary in accordance with LGA. One
            of the below mentioned values must be selected for other environment
            planning instrument. 1. Blacktown Local Environmental Plan 2015
          example: Refer to description for values.
    ExemptCDCCodeForApplication:
      title: exemptCDCCodeForApplication
      type: object
      properties:
        exemptCompDevCode:
          type: string
          description: >-
            This is to track under which part of the exempt and complying
            development code was the application determined. This will be
            mandatory when user selects 'State Environmental Planning Policy
            (Exempt and Complying Development Codes) 2008' from
            EnvironmentalPlangInstList. One of the below mentioned values must
            be selected for exempt CDC code for application 1. General Housing
            Code 2. Housing Code 3. Rural Housing Code 4. Low Rise Housing
            Diversity Code 5. Greenfield Housing Code 6. Inland Code 7. Housing
            Alterations Code 8. Commercial and Industrial Alterations Code 9.
            Commercial and Industrial (New Buildings and Additions Cod 10.
            Container Recycling Facilities Code 11. Subdivisions Code 12.
            Demolition Code 13. Fire Safety Code 14. Other
          example: Refer to description for values.
    ProposedDevComponent:
      type: object
      properties:
        proposedDevComponent:
          type: string
          description: >-
            This is to track if the proposed development comprises any
            development components from affordable housing, secondary dwellings,
            boarding houses and group homes. Example values are as below. Please
            refer to reference data API for the latest values. 1. Affordable
            housing 2. Secondary dwellings 3. Boarding houses 4. Group homes
          example: Refer to description for values.
    DevelopmentVariationDetails:
      type: object
      required:
        - developmentStandard
        - briefVariationJustification
      properties:
        developmentStandard:
          type: string
          description: >-
            This tracks the name of the clause to be varied, as sought by the
            applicant if variation is involved. Example values are as below.
            Please refer to reference data API for the latest values. 1. Floor
            space ratio 2. Height 3. Lot Size 4. Other
          example: Refer to description for values.
        clauseNumber:
          type: string
          description: >-
            This is to track the variation clause number if variation is
            involved.
        varPercentageOnSubmission:
          type: number
          description: >-
            This is to track the percentage value of variation as sought by
            applicant if variation is involved.
          format: decimal
        approvedVarValue:
          type: number
          description: >-
            This is to track the percentage value of the variation approved by
            council.
          format: decimal
        briefVariationJustification:
          type: string
          maxLength: 3000
          description: This is to track the brief justification for the variation.
        approvedVariationAuthority:
          type: string
          description: >-
            This is to track the concurring authority name who approved
            variation. 'Council' is the only allowed value for this attribute.
            When no values are supplied, this will be defaulted to the value
            'Council'.
          example: Refer to description for values.
    PendingLECDecision:
      required:
        - isSubjectOfLandECourtMatterQuestion
        - updatedByEmail
      type: object
      properties:
        isSubjectOfLandECourtMatterQuestion:
          type: boolean
          description: >-
            This is to track if Land and Environment Court decision is pending
            for an online DA application. If 'Is this application pending a
            decision from the Land and Environment Court ?' question is selected
            as yes(isSubjectOfLandECourtMatterQuestion=true), councils will be
            unable to proceed with the determination.
        referredDateLandECourt:
          type: string
          description: >-
            This is to track the date when applicant filed an appeal with the
            Land and Environment Court. This is mandatory when the application
            is pending a decision from the Land and Environment court.
          format: Date
        updatedByEmail:
          maxLength: 250
          type: string
          description: User must be registered in the planning portal
          example: john.smith@gmail.com
    RoomTypes:
      required:
        - roomType
      type: object
      properties:
        roomType:
          type: string
          description: Room type 1. Single Room 2. Double Room
          example: Refer to description for values.
        selfContainedPrivateRooms:
          type: number
          maxLength: 4
          description: Private rooms that are self-contained
        nonSelfContainedPrivateRooms:
          type: number
          maxLength: 4
          description: Private rooms that are not self-contained
    NumberofBedrooms:
      required:
        - noOfBedrooms
      type: object
      properties:
        noOfBedrooms:
          type: string
          description: >-
            Number of bedrooms 1. Studio 2. 1 bedroom 3. 2 bedrooms 4. 3
            bedrooms 5. 4 bedrooms 6. 5 bedrooms 7. 6+ bedrooms
          example: Refer to description for values.
        noOfDwellingsDemolished:
          type: number
          maxLength: 4
          description: Number of dwellings to be demolished.
        noOfDwellingsErected:
          type: number
          maxLength: 4
          description: Number of dwellings to be erected.
        noOfAffordableHousesErected:
          type: number
          maxLength: 4
          description: >-
            Number of dwellings classified as ‘affordable housing’ to be
            erected.
    AddcategoryOfDevelopment:
      type: object
      properties:
        categoryOfDevelopment:
          type: string
          description: >-
            This is to track the Category of development details. One of the
            below values are to be supplied. Example values are as below. Please
            refer to reference data API for the latest values. 1. Commercial
            including business premises and retail premises 2. Industry 3. Other
            for example rural/extractive industry 4. Residential accommodation
          example: Refer to description for values.
        areaDemolished:
          type: number
          description: Area demolished (m2).
        proposedArea:
          type: number
          description: Proposed area (m2).
    Person:
      type: object
      properties:
        firstName:
          maxLength: 20
          type: string
          minLength: 1
        otherName:
          maxLength: 20
          type: string
        familyName:
          maxLength: 20
          type: string
          minLength: 1
        contactNumber:
          maxLength: 10
          minLength: 8
          pattern: ^[0-9]+$
          type: string
        email:
          maxLength: 250
          type: string
          format: email
          minLength: 1
    DownloadableDocument:
      required:
        - documentName
        - documentType
        - documentURL
        - uploadedDateTime
      type: object
      properties:
        documentName:
          maxLength: 150
          type: string
          description: documentName has to be appended with file extension.
          example: test.docx
        documentType:
          maxLength: 100
          type: string
        uploadedDateTime:
          type: string
          format: date-time
        documentURL:
          maxLength: 500
          type: string
          description: URL of the document to be downloaded.
          format: uri
    Error:
      required:
        - errorCode
        - statusCode
      type: object
      properties:
        statusCode:
          type: integer
          example: 400
        message:
          type: string
          example: Invalid Request
        activityId:
          type: string
          example: 00000011-0ab-xy00-0000-500000000000
        errorCode:
          type: string
          example: DPE_TMS01
        errorDetails:
          type: string
          example: Inner Exceptions, Stack Trace, etc.
    Error404:
      required:
        - errorCode
        - statusCode
      type: object
      properties:
        statusCode:
          type: integer
          example: 404
        message:
          type: string
          example: No data found/Case is locked by another user.
        activityId:
          type: string
          example: 00000011-0ab-xy00-0000-500000000000
        errorCode:
          type: string
          example: DPE_TMS01
        errorDetails:
          type: string
          example: Inner Exceptions, Stack Trace, etc.
    AcceptReturnResponse:
      type: object
      properties:
        statusCode:
          type: integer
          example: 200
        message:
          type: string
        activityId:
          type: string
        contributionDetails:
          type: array
          description: >-
            This is to track the infrastructure contribution's case details
            associated to the development
          items:
            $ref: '#/components/schemas/contributionDetails'
        Documents:
          type: array
          description: Attached documents with eplanningDocIds.
          items:
            $ref: '#/components/schemas/DocResponse'
    Response:
      type: object
      properties:
        statusCode:
          type: integer
          example: 200
        message:
          type: string
        activityId:
          type: string
        Documents:
          type: array
          description: Attached documents with eplanningDocIds.
          items:
            $ref: '#/components/schemas/DocResponse'
    DocResponse:
      title: DocResponse
      type: object
      properties:
        documentName:
          type: string
          description: documentName which was uploaded as part of respective API opeartion
          example: test.docx
        documentType:
          type: string
          description: Type of Document under which repsective document was uploaded
        eplanningDocId:
          type: string
          description: DocId of the respective document which was uploaded
        externalOrgDocURL:
          type: string
          description: URL of the document which was uploaded
    contributionDetails:
      description: >-
        This is to track the contribution details of the case and will be sent
        in the response when available.
      type: object
      properties:
        caseID:
          maxLength: 32
          type: string
          example: CON-5453
        status:
          maxLength: 32
          type: string
          example: In-progress
    CommonApplicationType:
      type: object
      properties:
        commonApplicationType:
          type: string
    RelevantEPIList:
      type: object
      properties:
        relevantEPIValue:
          type: string
          description: >-
            This is to track the relevant environmental planning instrument(EPI)
            value.
        relevantSEPP:
          type: string
          description: >-
            This is to track the relevant SEPP. Applicable when State
            Environmental Planning Policy (SEPP) is selected.
        relevantLEP:
          type: string
          description: >-
            This is to track the relevant LEP. Applicable when Local
            Environmental Plan (LEP) is selected.
      description: >-
        This is to track the relevant environmental planning instrument. eg.
        LEP, SEPP.
    BasixCertificateList:
      type: object
      properties:
        basixCertificateNumber:
          maxLength: 50
          type: string
    devCategoryForParkingSpaces:
      type: object
      properties:
        categoryOfDevelopment:
          type: string
          description: >-
            This is to track the Category of development.Example values are as
            below. Please refer to reference data API for the latest values. 1.
            Commercial including business premises and retail premises 2.
            Industry 3. Other for example rural/extractive industry 4.
            Residential accommodation
        carParkingSpaces:
          type: integer
          description: >-
            This is to track the carParkingSpaces in the proposed online DA
            development.
        motorCycleSpaces:
          type: integer
          description: >-
            This is to track the number of motorCycleSpaces in the proposed
            online DA development.
        biCycleSpaces:
          type: integer
          description: >-
            This is to track the bicycleSpaces in the proposed online DA
            development.
      description: This is to track the number of parking spaces for application.
    ActsApplicable:
      type: string
      description: >-
        This is to track the acts that are applicable to the application.
        1.Biodiversity Conservation Act 2016 2.Fisheries Management Act 1994
      example: Refer to description for values
    updatedByEmail:
      maxLength: 250
      type: string
      description: User must be registered in the planning portal.
      example: john.smith@gmail.com
    Success:
      type: object
      properties:
        statusCode:
          type: integer
          example: 200
        message:
          type: string
          example: Preliminary Assessment Successful.
        CNRCaseId:
          type: string
          description: >-
            This is to track the CNR case ID when concurrence or referral was
            requested by council. Applicable only when isConcurrenceReq is true.
          example: CNR-1234
        PPSCaseId:
          type: string
          description: >-
            This is to track the process of PSS case uniquely. Applicable only
            when determining body is Sydney / Regional Planning Panel.
          example: PPSSWC-1234
        PlanningPanelMembers:
          type: array
          description: >-
            This is to track the planning panel members. Applicable only when
            determining body is Sydney / Regional Planning Panel.
          items:
            $ref: '#/components/schemas/PlanningPanelMember'
    PlanningPanelMember:
      type: object
      properties:
        PanelMember:
          type: string
        Representative:
          type: string
        Category:
          type: string
        Role:
          type: string
    SubdivisionType:
      type: object
      properties:
        subdivisionType:
          type: string
          description: >-
            Type of subdivision proposed. This is applicable when 'Subdivision'
            is one of the values for 'commonApplicationTypes'. Below are the
            sample values 1. Strata Title 2. Community Title 3. Torrens Title 4.
            Stratum Title
          example: Refer to description for values.
    Donation:
      type: object
      properties:
        donationType:
          maxLength: 50
          type: string
          description: It refers to the type of donation to be given
        personDonatedTo:
          maxLength: 100
          type: string
          description: >-
            It affirms the Name of party or person for whose benefit the
            donation / gift was made
        donationDate:
          type: string
          description: It affirms Date of benefit
          format: date
        donationValue:
          type: integer
          description: It affirms the value of donation
    Location:
      type: object
      properties:
        address:
          maxLength: 250
          type: string
          description: This is to track the address where the development is happening.
          example: 19-33 Elizabeth Street, Narrandera, 2700
        addressDetail:
          $ref: '#/components/schemas/AddressDetail'
        lotList:
          type: array
          items:
            $ref: '#/components/schemas/LotSectionPlan'
        lga:
          maxLength: 30
          type: string
          description: Local Government Area under which this application falls
          example: PENRITH
        isPrimary:
          type: boolean
          description: This is to track if the address is primary or not.
    AddressDetail:
      type: object
      properties:
        complexUnitType:
          type: string
        complexLevelType:
          type: string
        complexLevelNumber:
          type: string
        complexUnitIdentifier:
          type: string
        streetNumber1:
          type: string
        streetNumber2:
          type: string
        streetName:
          type: string
        streetSuffix:
          type: string
        streetType:
          type: string
        suburb:
          type: string
        latitude:
          type: number
        longitude:
          type: number
        wkid:
          type: string
        cadastralID:
          type: string
        gurasID:
          type: string
        primarySecondary:
          type: string
        state:
          type: string
        postCode:
          type: number
    LotSectionPlan:
      type: object
      properties:
        lotsectionplan:
          type: string
          example: 1/-/SPXXXXX
    ApplicantPerson:
      required:
        - firstName
        - familyName
      type: object
      properties:
        firstName:
          maxLength: 20
          type: string
          example: John
        otherName:
          maxLength: 128
          type: string
          example: Smith
        familyName:
          maxLength: 20
          type: string
          example: Smith
        contactNumber:
          maxLength: 10
          minLength: 1
          pattern: ^[0-9]+$
          type: string
    payerPerson:
      required:
        - contactNumber
        - email
        - firstName
        - familyName
      type: object
      properties:
        title:
          type: string
          description: Payer person salutation. 1.Miss 2.Mr 3.Mrs 4.Ms
          example: Refer to description for values.
        firstName:
          maxLength: 20
          type: string
          example: John
        otherName:
          maxLength: 20
          type: string
          example: Smith
        familyName:
          maxLength: 20
          type: string
          example: Smith
        contactNumber:
          maxLength: 10
          pattern: ^[0-9]+$
          type: string
        email:
          maxLength: 250
          type: string
          description: User must be registered in the planning portal
          example: john.smith@gmail.com
    payerCompany:
      type: object
      properties:
        companyName:
          maxLength: 256
          minLength: 1
          type: string
          description: >-
            used to hold company name.Required field when payer selected as
            company
        ABN:
          type: string
          description: Optional field when payer selected as company
        ACN:
          type: string
          description: Optional field when payer selected as company
        tradingName:
          maxLength: 256
          minLength: 1
          type: string
          description: Optional field when payer selected as company
        email:
          type: string
          format: email
    Company:
      type: object
      properties:
        ABNorACN:
          type: string
          example: '76650098007'
        companyName:
          type: string
          description: Owner company name
      description: >-
        Applicable when developmentSiteOwner is 'A company, business, government
        entity or other similar body owns the development site'
    Applicant:
      type: object
      properties:
        title:
          type: string
          description: >-
            This attribute is obsolete. However, this attribute will be
            continued to be received in the payload for the submitted cases
            prior to 30th May 2025. Salutation for the applicant. One of the
            below mentioned values must be selected for salutation. 1.Miss 2.Mr
            3.Mrs 4.Ms
          example: Refer to description for values.
        applicantPerson:
          $ref: '#/components/schemas/Person'
        address:
          maxLength: 250
          type: string
        isApplyBehalfOfCompany:
          type: boolean
          description: Is applicant applying on behalf of a company
        applyOnBehalfCompany:
          $ref: '#/components/schemas/ApplicantCompany'
        nominatedCompanyApplicant:
          type: boolean
          description: >-
            Is the nominated company the applicant for this
            application.Applicable when isApplyBehalfOfCompany is true
    Owner:
      type: object
      properties:
        isOwnerABuilder:
          type: boolean
          description: >-
            It Indicates if the owner of development site is the same as
            builder. Displays if value for Who owns the development site =
            'There are multiple owners of the development site and I am one of
            them with default value as logged in user' OR 'There are one or more
            owners of the development site and I am NOT one of them'
        title:
          type: string
          description: >-
            Salutation for the Owner. One of the below mentioned values must be
            selected for salutation for Owner 1. Miss 2. Mr 3. Mrs 4. Ms
          example: Refer to description for values.
        ownerPerson:
          $ref: '#/components/schemas/Person'
        ownerCompany:
          $ref: '#/components/schemas/Company'
        address:
          maxLength: 250
          type: string
          description: Owner's Address
          example: 19-33 Elizabeth Street, Narrandera, 2700
      description: Must include either a ownerPerson or ownerCompany
    DevelopmentType:
      type: object
      properties:
        developmentType:
          type: string
          description: >-
            type of development.One of the below mentioned values must be
            selected for developmentType.For latest values, please refer to the
            reference data API.
          example: Refer to description for values.
    IntegratedDevelopmentType:
      type: object
      properties:
        integratedDevelopmentType:
          type: string
          description: >-
            One of the below mentioned values must be selected for
            integratedDevelopmentType. 1. Coal Mine Subsidence Compensation Act
            2017 2. Fisheries Management Act 1994 3. Heritage Act 1977 4. Mining
            Act 1992 5. National Parks and Wildlife Act 1974 6. Petroleum
            (Onshore) Act 1991 7. Protection of the Environment Operations Act
            1997 8. Roads Act 1993 9.  Rural Fires Act 1997 10. Water Management
            Act 2000
          example: Refer to description for values.
    ApplicantCompany:
      type: object
      description: >-
        ABN number should be mandatory to uniquely identify the single record
        and other two parameters (ACN and company name) are obsolete. System
        will identify the company name based on ABN number search and update it.
      properties:
        companyName:
          maxLength: 250
          type: string
        ABNorACN:
          maxLength: 20
          type: string
          description: >-
            This attribute is obsolete and has been replaced by 'ABN'&'ACN'
            attribute. However, this attribute will be continued to be received
            until the next major API release.
        ABN:
          maxLength: 20
          type: string
          description: This is to track the ABN. It should be 11-digit number.
        ACN:
          maxLength: 20
          type: string
          description: This is to track the ACN. It should be 9-digit number.
        tradingName:
          maxLength: 250
          type: string
          description: This is to track the trading name.
    VPADetail:
      type: object
      properties:
        vpaDescription:
          maxLength: 512
          type: string
          description: >-
            It refers to Description of the VPA.Applicable when isApplicationVPA
            is true
        vpaStatus:
          type: string
          description: >-
            Applicable when isApplicationVPA is true. One of the values to be
            supplied. 1. Proposed 2. On exhibition 3. Executed
          example: Refer to description for values.
    WorkDay:
      type: object
      properties:
        proposed24HrWork:
          type: boolean
          description: Either 24 hour work of specify start and end hours
        startWorkingHours:
          maxLength: 15
          type: string
          description: >-
            It indicates the proposed starting hours of operation for that
            specific day.
          example: 09:30 AM
        endWorkingHours:
          maxLength: 15
          type: string
          description: >-
            It indicates the proposed closing hours of operation for that
            specific day.
          example: 05:30 PM
    ScheduleWorkDay:
      type: object
      properties:
        isMonWorkDay:
          type: boolean
        MonWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isTueWorkDay:
          type: boolean
        TueWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isWedWorkDay:
          type: boolean
        WedWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isThuWorkDay:
          type: boolean
        ThuWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isFriWorkDay:
          type: boolean
        FriWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isSatWorkDay:
          type: boolean
        SatWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isSunWorkDay:
          type: boolean
        SunWorkDay:
          $ref: '#/components/schemas/WorkDay'
      description: >-
        This attribute is obsolete. However, this attribute will be continued to
        be received in the payload for the submitted cases prior to 30th May
        2025. This is to track the proposed hours of operation when applicable.
    LEPVariation:
      type: object
      properties:
        relevantEPIAddress:
          type: array
          description: This is to track the zone of the land.
          items:
            $ref: '#/components/schemas/RelevantEPIAddress'
        zoneObjectives:
          type: string
          description: This is to track the objectives of the zone(s).
        developmentStandardVariations:
          type: array
          items:
            $ref: '#/components/schemas/DevelopmentStandardVariation'
        developmentDetails:
          type: array
          items:
            $ref: '#/components/schemas/DevelopmentDetails'
    RelevantEPIAddress:
      type: object
      properties:
        address:
          maxLength: 250
          type: string
          description: Address under - What is the zone of the land?
        landZone:
          maxLength: 100
          type: string
          description: Zone under - What is the zone of the land?
    RelevantEnvPlanningList:
      type: object
      properties:
        relevantEnvPlanningInst:
          type: string
          description: >-
            This is to track the name of the relevant environmental planning
            instrument. Example values are as below. Please refer to reference
            data API for the latest values. eg. LEP, SEPP 1. State Environmental
            Planning Policy (SEPP) 2. Local Environmental Plan (LEP)
          example: Refer to description for values.
    DevelopmentStandardVariation:
      type: object
      properties:
        objectives:
          type: string
        circumstances:
          type: string
          description: >-
            This is to track how the compliance with the development standard(s)
            is unreasonable or unnecessary in the circumstances of this
            particular case.
        justification:
          type: string
          description: >-
            This is to track if there are sufficient environmental planning
            grounds to justify variation of the development standard(s).
        otherInformation:
          type: string
          description: >-
            This is to track if any other relevant information to be considered
            to justify variation of the development standard(s).
    DevelopmentDetails:
      type: object
      properties:
        developmentStandardVaried:
          type: string
          description: >-
            This is to track the name of the development standard being varied.
            Example values are as below. Please refer to reference data API for
            the latest values. 1. Floor space ratio 2. Height 3. Lot Size 4.
            Other
          example: Refer to description for values.
        clauseNumber:
          type: string
          description: This is to track the clause number.
        devStandardNumberVaried:
          type: string
          description: This is to track the numeric value of the standard being varied.
        devStdPercentagePropVariation:
          type: number
          description: This is to track the percentage value of the standard being varied.
        devNumberAgainstStandard:
          type: string
          description: >-
            This is to track the numeric value of the development against this
            standard.
    developerDetails:
      type: object
      properties:
        ABN:
          type: string
          description: >-
            This is to track the Australian Business Number (ABN), which is an
            unique 11 digit identifier issued to all entities registered in the
            Australian Business Register (ABR). It should be 11-digit number.
        ACN:
          type: string
          description: >-
            This is to track the Australian Company Number (ACN), which is a
            nine digit number. It should be 11-digit number.
        companyName:
          maxLength: 250
          type: string
          description: This is to track the company name.
        tradingName:
          maxLength: 250
          type: string
          description: This is to track the trader's full name
        address:
          type: string
          description: This is to track the developer address.
        emailAddress:
          maxLength: 250
          type: string
          description: >-
            This is to track the email address which must be registered in the
            planning portal.
          example: john.smith@gmail.com
      description: This is to track the developer details.
    climateZones:
      description: >-
        This attribute is obsolete. This attribute is obsolete. Please refer to
        the example values below 1. Climate zone 1 – high humidity summer, warm
        winter 2. Climate zone 2 – warm humid summer, mild winter 3. Climate
        zone 3 – hot dry summer, warm winter 4. Climate zone 4 – hot dry summer,
        cool winter 5. Climate zone 5 – warm temperate 6. Climate zone 6 – mild
        temperate 7. Climate zone 7 – cool temperate 8. Climate zone 8 - alpine
      type: object
      properties:
        climateZone:
          type: string
    exemptFromSEPPNonResidentialReasons:
      description: >-
        Please refer to the example values below 1. Development that is
        permitted with or without consent or is exempt or complying development
        under State Environmental Planning Policy (Exempt and Complying
        Development Codes) 2008 2. Development that is permitted with or without
        consent or is exempt or complying development under State Environmental
        Planning Policy (Resources and Energy) 2021, Chapter 2 3. Development
        that is permitted with or without consent or is exempt or complying
        development under State Environmental Planning Policy (Transport and
        Infrastructure) 2021, Chapter 5 4. Development on land wholly in RU1,
        RU2, RU3, E5, IN3, C1, C2, C3, W1, W2, W3 or W4 5. Development for
        purposes of residential care facilities 6. Development that is wholly
        residential 7. A modification to a development application, where the
        original application was lodged before 1 October 2023 8. A modification
        or a review to a development application, or a review of determination,
        where the original application was submitted on the NSW Planning Portal
        before 1 October 2023
      type: object
      properties:
        exemptFromSEPPNonResidentialReason:
          type: string
    proposedDevSustainablityMeasures:
      description: >-
        Please refer to the example values below 1.The minimisation of waste
        from associated demolition and construction, including by the choice and
        reuse of building materials 2.A reduction in peak demand for
        electricity, including through the use of energy-efficient technology
        3.A reduction in the reliance on artificial lighting and mechanical
        heating and cooling through passive design 4.The generation and storage
        of renewable energy 5.The metering and monitoring of energy consumption
        6.The minimisation of the consumption of potable water 7.None of the
        above
      type: object
      properties:
        proposedDevSustainablityMeasure:
          type: string
    devAchievesSustainabilityRatings:
      type: object
      description: >-
        Please refer to the example values below 1.NABERS Certification 2.Green
        Star Buildings Certification 3.Green Star Communities Certification
        4.LEED Certification 5.Passive House Certification 6.Living Building
        Challenge Certification 7.Other
      properties:
        devAchievesSustainabilityRating:
          type: string
    emissionsReportVerifierDetails:
      description: >-
        This is to track the details of the qualified person certifying the
        embodied emission amounts disclosed in the form. This is appicable when
        isExemptFromSEPPNonResidential=false & isNABERSFormAccompanied = true
      type: object
      properties:
        firstName:
          maxLength: 50
          type: string
        familyName:
          maxLength: 50
          type: string
        professionalQualification:
          description: >-
            Please find the sample values below 1. Architect or designer 2.
            Engineer 3. NABERS assessor 4. Quantity surveyor
          type: string
        registrationDetails:
          maxLength: 50
          type: string
        businessName:
          maxLength: 50
          type: string
        ABN:
          maxLength: 11
          type: string
    netZeroProvisions:
      description: >-
        Please refer to the example values below 1. Electric HVAC system 2.
        Future plant space allocated 3. Location of current plant room enables
        future conversion 4. Access to plant room enables machinery to be
        changed over 5. Electrified services and appliances 6. Renewable energy
        generation and storage 7. Other
      type: object
      properties:
        netZeroprovision:
          type: string
    Agreements:
      type: object
      properties:
        typeOfAgreement:
          type: string
          description: This is to track the type of Agreement.
        targetedStarRating:
          type: integer
          description: This is to track the targeted star rating.
        agreementReferenceNumber:
          type: string
          maxLength: 7
          description: This is to track the agreement reference Number.
  securitySchemes:
    apiKeyHeader:
      type: apiKey
      name: api-key
      in: header
    apiKeyQuery:
      type: apiKey
      name: subscription-key
      in: query
security:
  - apiKeyHeader: []
  - apiKeyQuery: []
